viii
Contents
3
Algorithms for Binary Neural Networks
37
3.1
Overview
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
37
3.2
BNN: Binary Neural Network . . . . . . . . . . . . . . . . . . . . . . . . . .
38
3.3
XNOR-Net: Imagenet Classification Using Binary Convolutional Neural Net-
works
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
38
3.4
MCN: Modulated Convolutional Network
. . . . . . . . . . . . . . . . . . .
40
3.4.1
Forward Propagation with Modulation . . . . . . . . . . . . . . . . .
41
3.4.2
Loss Function of MCNs . . . . . . . . . . . . . . . . . . . . . . . . .
43
3.4.3
Back-Propagation Updating . . . . . . . . . . . . . . . . . . . . . . .
44
3.4.4
Parameters Evaluation . . . . . . . . . . . . . . . . . . . . . . . . . .
45
3.4.5
Model Effect
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
47
3.5
PCNN: Projection Convolutional Neural Networks . . . . . . . . . . . . . .
49
3.5.1
Projection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
51
3.5.2
Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
51
3.5.3
Theoretical Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . .
52
3.5.4
Projection Convolutional Neural Networks . . . . . . . . . . . . . . .
53
3.5.5
Forward Propagation Based on Projection Convolution Layer . . . .
54
3.5.6
Backward Propagation . . . . . . . . . . . . . . . . . . . . . . . . . .
54
3.5.7
Progressive Optimization
. . . . . . . . . . . . . . . . . . . . . . . .
55
3.5.8
Ablation Study . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
58
3.6
RBCN: Rectified Binary Convolutional Networks with Generative Adversar-
ial Learning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
60
3.6.1
Loss Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
62
3.6.2
Learning RBCNs . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
62
3.6.3
Network Pruning . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
64
3.6.4
Ablation Study . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
66
3.7
BONN: Bayesian Optimized Binary Neural Network . . . . . . . . . . . . .
67
3.7.1
Bayesian Formulation for Compact 1-Bit CNNs . . . . . . . . . . . .
69
3.7.2
Bayesian Learning Losses . . . . . . . . . . . . . . . . . . . . . . . .
69
3.7.3
Bayesian Pruning . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
71
3.7.4
BONNs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
71
3.7.5
Forward Propagation . . . . . . . . . . . . . . . . . . . . . . . . . . .
72
3.7.6
Asynchronous Backward Propagation
. . . . . . . . . . . . . . . . .
73
3.7.7
Ablation Study . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
76
3.8
RBONN: Recurrent Bilinear Optimization for a Binary Neural Network . .
79
3.8.1
Bilinear Model of BNNs . . . . . . . . . . . . . . . . . . . . . . . . .
81
3.8.2
Recurrent Bilinear Optimization
. . . . . . . . . . . . . . . . . . . .
81
3.8.3
Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
83
3.8.4
Ablation Study . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
84
3.9
ReBNN: Resilient Binary Neural Network . . . . . . . . . . . . . . . . . . .
85
3.9.1
Problem Formulation
. . . . . . . . . . . . . . . . . . . . . . . . . .
86
3.9.2
Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
86
3.9.3
Ablation Study . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
88
4
Binary Neural Architecture Search
91
4.1
Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
91
4.2
ABanditNAS: Anti-Bandit for Neural Architecture Search . . . . . . . . . .
92
4.2.1
Anti-Bandit Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . .
93
4.2.2
Search Space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
95
4.2.3
Anti-Bandit Strategy for NAS . . . . . . . . . . . . . . . . . . . . . .
95
4.2.4
Adversarial Optimization
. . . . . . . . . . . . . . . . . . . . . . . .
97